﻿using NUnit.Framework;
using System.Collections.Generic;
using OpenSda.Agilcont.Common.Data.Contracts;
using OpenSda.Agilcont.Common.Data.Entities;

namespace OpenSda.Agilcont.Common.Data.NhContexts.NuTest
{

    [TestFixture]
    public class EjercicioContableDataTest : AbstractBaseDataTests
    {
        private IEjercicioContableData target;
        private IEmpresaData empresaData;

        // These properties will be injected based on type
        public IEjercicioContableData EjercicioContableData { set { target = value; } }
        public IEmpresaData EmpresaData { set { empresaData = value; } }


        [Test]
        public void SaveTest()
        {
            EjercicioContable ejercicioContable = this.Save();
            Assert.IsNotNull(ejercicioContable.Identity);
        }

        private EjercicioContable Save()
        {
            Empresa e = empresaData.GetAll()[0];

            return target.Save(new EjercicioContable()
            {
                Anio = "200711545",
                EstadoActivo = "pedro",
                EmpresaRef = e
                //BirthDate = new DateTime(1977, 01, 12)
            });
        }

        private void Delete(EjercicioContable ejercicioContable)
        {
            throw new System.NotImplementedException();
        }
    }
}
